/*
 * FileName：SysMenu.java 
 * <p>
 * Copyright (c) 2017-2020 <a href="https://www.smartwx.info">hermit(1154808491@qq.com)</a>.
 * <p>
 * Licensed under the GNU General Public License, Version 3 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * <p>
 * http://www.gnu.org/licenses/gpl-3.0.html
 * <p>
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * 
 */
package com.smart.sys.entity;

import com.smart.common.page.Page;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 资源菜单信息
 *
 * @author hermit
 * @version 2.0
 * @date 2018-12-30 22:26:32
 */
@Data
@Builder(toBuilder = true)
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(description = " 资源菜单信息")
public class SysMenu extends Page implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 菜单id
	 */
    @ApiModelProperty(value = "菜单id")
	private String menuId;
	/**
	 * 菜单名称
	 */
    @ApiModelProperty(value = "菜单名称")
	private String menuName;
	/**
	 * 父id，0为顶级
	 */
    @ApiModelProperty(value = "父id，0为顶级")
	private String parentId;
	/**
	 * 菜单类型：1菜单 2功能
	 */
    @ApiModelProperty(value = "菜单类型：1菜单 2功能")
	private Integer menuType;
	/**
	 * url链接
	 */
    @ApiModelProperty(value = "url链接")
	private String url;
	/**
	 * 权限标识
	 */
    @ApiModelProperty(value = "权限标识")
	private String perms;
	/**
	 * 菜单图标
	 */
    @ApiModelProperty(value = "菜单图标")
	private String icon;
	/**
	 * 菜单排序
	 */
    @ApiModelProperty(value = "菜单排序")
	private Integer orderNum;
	/**
	 * 展开：0否 1是
	 */
    @ApiModelProperty(value = "展开：0否 1是")
	private String expandFlag;
	/**
	 * 叶子节点0否 1是
	 */
    @ApiModelProperty(value = "叶子节点0否 1是")
	private String leafFlag;
	/**
	 * 状态（0正常 1停用)
	 */
	@ApiModelProperty(value = "状态（0正常 1停用）")
	private String status;
	/**
	 * 是否是 iframe 0否 1是
	 */
	@ApiModelProperty(value = "是否是 iframe 0否 1是")
	private String iframeFlag;
	/**
	 * 系统参数：0否 1是
	 */
    @ApiModelProperty(value = "系统参数：0否 1是")
	private String systemFlag;
	/**
	 * 备注
	 */
    @ApiModelProperty(value = "备注")
	private String remark;
	/**
	 * 创建人
	 */
    @ApiModelProperty(value = "创建人")
	private String createUser;
	/**
	 * 创建时间
	 */
    @ApiModelProperty(hidden = true)
	private Date createTime;
	/**
	 * 修改人
	 */
    @ApiModelProperty(value = "修改人")
	private String updateUser;
	/**
	 * 修改时间
	 */
    @ApiModelProperty(hidden = true)
	private Date updateTime;

	/**
	 * 子菜单
	 */
	@ApiModelProperty(hidden = true)
	private List<SysMenu> subList;
}
